package com.huilian.iotbox.data.vo;

import com.huilian.iotbox.data.po.StatsUser;
import lombok.Data;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * @author 谢洛涛
 * @date 2021/4/22 11:15
 */
@Data
public class StatsUserVo extends StatsUser {
    private List<StatsStoreVo> statsStoreVoList;
    private BigDecimal totalCommission;
    private String userName;

    private String startTime;

    private Integer mchStoreId;

    private String endTime;

    private List<Integer> storeIdList = new ArrayList<>();

    private Integer consume;

    private Integer coinType;

    /**
     * 出礼总数
     **/
    private Integer tuiLiIncrementTotal;
    /**
     * 总成本
     **/
    private BigDecimal totalCostPrice;

    private Integer day;

    private String name;

    private String title;

    /**
     * 活动营业额
     */
    private BigDecimal activityTurnover;

    /**
     * 活动结算额
     */
    private BigDecimal activitySettlementMoney;
    /**
     * 活动微信收款
     */
    private BigDecimal activityWxTurnover;
    /**
     * 活动支付宝收款
     */
    private BigDecimal activityAliTurnover;

    /**
     * 1元面额张数
     */
    private Integer oneYuanDenomination;
    /**
     * 5元面额张数
     */
    private Integer fiveYuanDenomination;
    /**
     * 10元面额张数
     */
    private Integer tenYuanDenomination;
    /**
     * 20元面额张数
     */
    private Integer twentyYuanDenomination;
    /**
     * 50元面额张数
     */
    private Integer fiftyYuanDenomination;
    /**
     * 100元面额张数
     */
    private Integer oneHundredYuanDenomination;

    /**
     * 1元面额合计（元）
     */
    private BigDecimal oneYuanDenominationTotal;
    /**
     * 5元面额合计（元）
     */
    private BigDecimal fiveYuanDenominationTotal;
    /**
     * 10元面额合计（元）
     */
    private BigDecimal tenYuanDenominationTotal;
    /**
     * 20元面额合计（元）
     */
    private BigDecimal twentyYuanDenominationTotal;
    /**
     * 50元面额合计（元）
     */
    private BigDecimal fiftyYuanDenominationTotal;
    /**
     * 100元面额合计（元）
     */
    private BigDecimal oneHundredYuanDenominationTotal;

    /**
     * 日期
     */
    private String dateFormat;
    /**
     * 兑币机出币总数——>线上出币
     **/
    private Integer onLineOutCoinTotal;

    private Integer totalDevice;
    private Integer totalMerchantStore;
    private List<MerchantStoreVo> merchantStoreVoList;
    private String startDateStr;
    private String endDateStr;
    private List<DeviceVo> deviceTypeList;

    /**
     * 百分比 在线支付/总营业额
     * */
    private BigDecimal percentTurnoverOnLine;
    /**
     * 百分比 活动收入/总营业额
     * */
    private BigDecimal percentActivityTurnover;
    /**
     * 百分比 现金收入/总营业额
     * */
    private BigDecimal percentCashMoney;
    /**
     * 百分比 抖音收入/总营业额
     * */
    private BigDecimal percentTurnoverDouYin;
    /**
     * 百分比 美团收入/总营业额
     * */
    private BigDecimal percentTurnoverMeiTuan;

    /**
     * 商家收入积分
     * */
    private Integer incomeTotalIntegral;

    /**
     * 商家支出的积分
     * */
    private Integer expendTotalIntegral;

    /**
     *客户兑换商品数量
     * */
    private Integer incomeCommodityTotal;

    /**
     *商家回收商品数量
     *
     * */
    private Integer expendCommodityTotal;

    /**
     * 商家收入游戏币总数量
     *
     * */
    private Integer incomeTotalGameCoin;

    /**
     * 客户使用游戏币兑换商品总数量
     *
     * */
    private Integer incomeCommodityGameCoin;

    /**
     * 商家收入彩票总数量
     *
     * */
    private Integer incomeTotalLottery;

    /**
     * 客户使用彩票兑换商品数量
     *
     * */
    private Integer incomeCommodityLottery;

    /**
     * 抖音核销收款
     * */
    private BigDecimal turnoverDouYin;

    /**
     * 美团核销收款
     * */
    private BigDecimal turnoverMeiTuan;

    /**
     * 门店套餐列表
     * */
    private List<StatsUserVo> statistStorePackageList = new ArrayList<>();
    /**
     * 门店套餐成交笔数
     * */
    private Integer storeDealCount;

    /**
     * 门店套餐成交金额
     * */
    private BigDecimal storeDealMoney;

    /**
     * 抖音套餐成交笔数
     * */
    private Integer douYinDealCount;

    /**
     *  抖音套餐成交金额
     * */
    private BigDecimal  douYinDealMoney;

    /**
     * 美团套餐成交笔数
     * */
    private Integer meiTuanDealCount;

    /**
     *  美团套餐成交金额
     * */
    private BigDecimal meiTuanDealMoney;

    /**
     * 套餐名
     * */
    private String body;

    /**
     * 现金笔数
     * */
    private Integer cashCount;

    /**
     * 抖音笔数
     * */
    private Integer douYinCount;

    /**
     * 美团笔数
     * */
    private Integer meiTuanCount;

    /**
     * 最大金额
     * */
    private BigDecimal maxTotalAmount;

    /**
     * 最小金额
     * */
    private BigDecimal minTotalAmount;

    /**
     *消费会员个数
     * */
    private Integer memberConsumeNum;

    /**
     * 平均客价
     * */
    private BigDecimal averagePrice;
    /**
     *出币总数——>微信秒杀核销
     * */
    private Integer weiXinSeckillOutCoinTotal;
    /**
     *出币总数——>微信拼团核销
     * */
    private Integer weiXinGroupBuyingOutCoinTotal;
    /**
     *出币总数——>微信卡劵核销
     * */
    private Integer weiXinVoucherOutCoinTotal;
    /**
     *出币总数——>人工出币
     * */
    private Integer artificialOutCoinTotal;


    private BigDecimal activityCancelledMoney;

    private BigDecimal activityUnwrittenMoney;

    /**
     * 微信核销出币->微信拼团核销+微信秒杀核销+微信凭证核销
     *
     * */
    private Integer weiXinVerifyTotalCoin;


    /**
     *  现金出币 / 总出币 = 百分比
     * */
    private BigDecimal percentOffLinePayOutCoin;

    /**
     *  会员出币 / 总出币 = 百分比
     * */
    private BigDecimal percentFetchMemberOutCoin;

    /**
     *  线上出币 / 总出币 = 百分比
     * */
    private BigDecimal percentOnLinePayOutCoinTotal;

    /**
     *  人工出币 / 总出币 = 百分比
     * */
    private BigDecimal percentArtificialOutCoin;

    /**
     *  抖音核销出币 / 总出币 = 百分比
     * */
    private BigDecimal percentDouYinOutCoin;

    /**
     *  美团核销出币 / 总出币 = 百分比
     * */
    private BigDecimal percentMeiTuanOutCoin;

    /**
     *  微信核销出币 / 总出币 = 百分比
     * */
    private BigDecimal percentWeiXinVerifyOutCoin;

    /**
     *  线下投币 / 总出币 = 百分比
     * */
    private BigDecimal percentInsertCoinOffline;

    /**
     *  线上投币 / 总出币 = 百分比
     * */
    private BigDecimal percentInsertCoinOnLine;

    /**
     * 售币数（游戏币销售数量）
     * */
    private Integer quantityOfCoinsSold;

    /**
     *出币数（游戏币消耗数量）
     * */
    private Integer amountOfCoinsConsumed;

    /**
     *出币总数——>派发福利
     * */
    private Integer distributeBenefitCoinTotal;

    /**
     *出币总数——>私域加群福利
     * */
    private Integer groupBenefitCoinTotal;


    /**
     *出币总数——>游戏币红包
     * */
    private Integer gameCoinRedPacketCoinTotal;

    /**
     *游戏币营业额
     * */
    private BigDecimal turnoverGameCoin;

    /**
     * 通用商品营业额
     * */
    private BigDecimal turnoverGeneralCommodity;

    /**
     * 套票商品营业额
     * */
    private BigDecimal turnoverTicketPackageCommodity;

    /**
     *余币数 = 售币数-消耗数
     * */
    private Integer remainingCoins;

    /**
     *币均价
     * */
    private BigDecimal averageCoinPrice;

    /**
     *  游戏币红包 / 总出币 = 百分比
     * */
    private BigDecimal percentCoinRedPacketCoin;

    /**
     *  加群福利 / 总出币 = 百分比
     * */
    private BigDecimal percentGroupBenefitCoin;

    /**
     *  派发福利 / 总出币 = 百分比
     * */
    private BigDecimal percentDistributeBenefitCoin;

    /**
     * 超级兑币机现金总收款
     * */
    private BigDecimal selfServiceTerminalCash;

    /**
     * 吧台现金总收款
     * */
    private BigDecimal manualTerminalCash;


    /**
     * 收现金兑币机列表对应的面额
     * */
    private List<OrderVo> orderDenominationList;

    /**
     *统计 收现金兑币机列表+吧台
     * */
    private List<StatsStoreVo> statsStoreDeviceNoList;

    /**
     *线下收款码营业额
     * */
    private BigDecimal turnoverOfflineCollectionCode;

    /**
     * 扫码支付总额
     * */
    private BigDecimal scanCodePayTotalTurnover;

    /**
     * 线上扫码
     * */
    private BigDecimal turnoverOnLine;

    /**
     *扫码支付手续费
     * */
    private BigDecimal scanningFee;
    /**
     *抖音核销手续费
     * */
    private BigDecimal tiktokCancellationFee;
    /**
     *美团核销手续费
     * */
    private BigDecimal meiTuanCancellationFee;

    private String agencyName;

    private String agencyNo;
    /**
     * 总交易笔数
     */
    private Integer totalCount;

    /**总金额*/
    private BigDecimal totalAmount;

    /**商品数*/
    private Integer commodityCount;
    /**利润*/
    private BigDecimal totalProfit;
    private Integer onlineCount;
    private Integer offlineCount;
    private Integer lackTotalStockNumber;
    private Integer orderCount;
    /**昨天营业额*/
    private BigDecimal yesterdayTotalAmount;
    /**昨天订单数*/
    private Integer yesterdayTotalOrderCount;
    /**昨天售币数*/
    private Integer yesterdayTotalQuantityOfCoinsSold;
    /**昨天总利润*/
    private BigDecimal yesterdayTotalProfit;
    /**昨天总成本价*/
    private BigDecimal yesterdayTotalCostPrice;
    /**昨天总商品数量*/
    private Integer yesterdayTotalCommodityCount;
    /**
     * 订单总额
     * */
    private BigDecimal orderTotalTurnover;
    private String commodityProjectName;
    private Integer totalTime;
    private Long commodityId;
    private Long commodityStoreUpDownId;
    private Long commodityProjectUpDownId;
    private Integer packagePayCount;
    private BigDecimal packageTotalAmount;
}
